home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 1 / Cream of the Crop 1.iso / PROGRAM / SEFX10.ARJ / SEFX.H < prev    next >
Text File  |  1992-02-06  |  2KB  |  121 lines

  1. /*
  2. // SEFX.H
  3. //
  4. // Header file for the Sefx sound effects library
  5. //
  6. // Copyright (c) 1992 Bri Productions
  7. //
  8. */
  9.  
  10.  
  11. #if defined  __TURBOC__
  12. #if  __STDC__
  13. #define  _Cdecl
  14. #else
  15. #define  _Cdecl  cdecl
  16. #endif
  17. #elif defined  __ZTC__
  18. #define  _Cdecl
  19. #elif defined  M_I86 && !defined  __ZTC__
  20. #if !defined NO_EXT_KEYS
  21. #define  _Cdecl  cdecl
  22. #else
  23. #define  _Cdecl
  24. #endif
  25. #endif
  26.  
  27.  
  28. /*
  29. //-------------------------------------
  30. //
  31. // SndOpen() return codes
  32. //
  33. //-------------------------------------
  34. */
  35.  
  36. #define  NOERR       0           /* no error                */
  37. #define  OPENED      1           /* sefx already opened     */
  38. #define  MALLOC_ERR  4           /* memory allocation error */
  39.  
  40.  
  41.  
  42. /*
  43. //-------------------------------------
  44. //
  45. // time bases
  46. //
  47. //-------------------------------------
  48. */
  49.  
  50. #define  LOW      3              /* 54.9 milliseconds */
  51. #define  MED      2              /* 27.5 milliseconds */
  52. #define  HIGH     1              /* 13.7 milliseconds */
  53. #define  ULTRA    0              /*  6.9 milliseconds */
  54.  
  55.  
  56. /*
  57. //-------------------------------------
  58. //
  59. // on and off
  60. //
  61. //-------------------------------------
  62. */
  63.  
  64. #define ON        1
  65. #define OFF       0
  66.  
  67.  
  68. /*
  69. //-------------------------------------
  70. //
  71. // TONE typedef
  72. //
  73. //-------------------------------------
  74. */
  75.  
  76. typedef struct{
  77.             int freq;
  78.             int durtn;
  79.             }TONE;
  80.  
  81.  
  82.  
  83. /*
  84. //-------------------------------------
  85. //
  86. // function macros
  87. //
  88. //-------------------------------------
  89. */
  90.  
  91. #define  SndPause(a)          SndTone(0, a)
  92. #define  SndPulse(a,b,c,d) SndTrill(a,0,b,c,d)
  93.  
  94.  
  95.  
  96. /*
  97. //-------------------------------------
  98. //
  99. // function prototypes
  100. //
  101. //-------------------------------------
  102. */
  103.  
  104. int      _Cdecl   SndOpen     (unsigned Qsize, int tbase);
  105. void     _Cdecl   SndClose    (void);
  106.  
  107. unsigned _Cdecl   SndLen      (void);
  108.  
  109. int      _Cdecl   SndTbase    (int tbase);
  110. void     _Cdecl   SndFlush    (void);
  111. int      _Cdecl   SndHold     (int on_off);
  112. void     _Cdecl   SndTerm     (void);
  113.  
  114. void     _Cdecl   SndTone     (int freq, int durtn);
  115. void     _Cdecl   SndSlide    (int start, signed dfreq, int durtn, int reps);
  116. void     _Cdecl   SndTrill    (int freq1, int freq2, int durtn1, int durtn2, int reps);
  117. void     _Cdecl   SndString   (const TONE *str, int n_tone, int reps);
  118.  
  119. int      _Cdecl   SndMs       (unsigned ms);
  120.  
  121.